package mysql;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

/*
 * 一使用JDBC 链接 数据库  Mysql
 *  1.maven仓库下载对应mysql版本的jar包
 *  2.mysql服务器必须启动WampServer
 *  3.加载数据库驱动mysql
 *  4.获取数据库链接mysql - 用户名，密码
 * 二连接成功
 *  1.test 库 创建表 person 给3个字段
 */
public class mysqlJDBC {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //3.加载驱动
        //JDBC 规范标准 要求
        //告诉JDBC 现在链接什么种类的数据库
        //Class.forName() 通过反射加载对应数据库版本驱动类
        //对应数据库固定注册写法  Mysql
        Class.forName("com.mysql.jdbc.Driver");
        //4.获取mysql数据库链接
        String username="root"; //mysql数据库用户名
        String password="";     //mysql数据库密码
        //url链接地址 mysql
        // jdbc:mysql://ip地址：端口号/库名?
        String url="jdbc:mysql://localhost:3306?characterEncoding=UTF-8";
        //DriverManage 工具类  功能获取数据库链接 url 用户名 密码
        //getConnection方法 链接不同版本数据库链接
        Connection conn=
        DriverManager.getConnection(url,username,password);
        System.out.println("测试链接是否成功"+conn);

        //5.编写静态添加sql操作字符串
        String sql="insert into person values(2,'王世伟'，‘黑龙江哈尔滨’)";

        //6.执行静态sql 增加操作
        Statement st=conn.createStatement();
        //6.2执行静态sql:executeUpdate(静态sql)
        int rows=st.executeUpdate(sql);
        System.out.println("增加："+rows+"语句");
        //7.关闭资源
        st.close(); conn.close();
    }
}

/*
 *  昨天重点
 * 1.JDBC规范  链接各种数据库  数据  是Java提供一套接口
 * 2.maven仓库下载对应jar包---Java---面向对象类
 *   mysql版本 5.5  mysql jdbc
 *   oracle版本 10g  ojdbc 8
 * 3.编程步骤 -- JDBC规范
 * 3.1加载驱动，jdbc链接数据库 每个数据库都有自己驱动
 *    Class.forName() 反射技术 固定结构
 *    Mysql 版本5.X 驱动 com.mysql.jdbc.Driver
 *    Mysql 版本8.X 驱动 com.mysql.cj.jdbc.Driver
 *    Java -->JDBC标准规范-->Driver接口：驱动接口，各种数据库
 *    JDBC承认写对应驱动接口  所有数据库承认接口 确定什么数据库
 * 3.2获取链接 Mysql数据库 用户名 密码 url用字符串接受
 * String username='root';  ---java写法
 * String password="";
 * urlMysql链接路径---固定结构
 * jdbc：mysql：//localhost：3306
 * 协议：子协议://IP地址：端口号/库名?设置端口号
 * 本机
 * 127.0.0.1
 * Java--DriverManner接口
 * DriverManner.getConnection(url,username,password)
 * 具体链接方案个i方法：getConnection()地址 用户名 密码确定无误
 * 返回对象Connection对象 Java与对应数据库链接
 * 打印Connection对象 打印对象  连接成功
 * 4执行sql JDBC只能做CRUD增删改查
 * 4.1 Mysql ---》使用库创建表
 * 4.2 Java  ---》 CUD增删改操作
 * 4.3 Java  ---》确定数据库链接成功 con ---调取执行增删改查操作
 *           --- Statement
 *     代码 Statement st=con.createStatement();
 * 4.4 Java -->Statement对象提供方法 executeUpdate();
 *          -->此方法执行sql：曾 山 该 操作
 * 代码：st.executeUpdate(sql);
 * 打桩  打印成功多少条记录
 * 5.关闭资源 倒置法 Statement
 */
